From fc79dcf291da31beb6b5b82278bfb182e0768018 Mon Sep 17 00:00:00 2001 From: robertl Date: Wed, 7 May 2003 13:56:13 +0000 Subject: [PATCH] Add versioning to display_vecs for future improvements. --- gpsbabel/defs.h | 4 ++-- gpsbabel/filter_vecs.c | 13 ++++++++++--- gpsbabel/main.c | 9 +++++++-- gpsbabel/vecs.c | 26 ++++++++++++++++---------- 4 files changed, 35 insertions(+), 17 deletions(-) diff --git a/gpsbabel/defs.h b/gpsbabel/defs.h index 77970284f..2c0cdb07f 100644 --- a/gpsbabel/defs.h +++ b/gpsbabel/defs.h @@ -273,12 +273,12 @@ void fatal(const char *, ...) ff_vecs_t *find_vec(char *, char **); void disp_vecs(void); -void disp_formats(void); +void disp_formats(int version); void printposn(const coord *c, int is_lat); filter_vecs_t * find_filter_vec(char *, char **); void free_filter_vec(filter_vecs_t *); -void disp_filters(void); +void disp_filters(int version); void disp_filter_vecs(void); #ifndef DEBUG_MEM diff --git a/gpsbabel/filter_vecs.c b/gpsbabel/filter_vecs.c index 3f87a8700..6b57e4051 100644 --- a/gpsbabel/filter_vecs.c +++ b/gpsbabel/filter_vecs.c @@ -127,10 +127,17 @@ disp_filter_vecs(void) * determine what formats are supported. */ void -disp_filters(void) +disp_filters(int version) { fl_vecs_t *vec; - for (vec = filter_vec_list; vec->vec; vec++) { - printf("%s\t%s\n", vec->name, vec->desc); + + switch(version) { + case 0: + for (vec = filter_vec_list; vec->vec; vec++) { + printf("%s\t%s\n", vec->name, vec->desc); + } + break; + default: + ; } } diff --git a/gpsbabel/main.c b/gpsbabel/main.c index 4c5d9bb20..57c0a235f 100644 --- a/gpsbabel/main.c +++ b/gpsbabel/main.c @@ -75,6 +75,7 @@ main(int argc, char *argv[]) char *ivec_opts = NULL; char *ovec_opts = NULL; char *fvec_opts = NULL; + int opt_version = 0; global_opts.objective = wptdata; @@ -110,6 +111,10 @@ main(int argc, char *argv[]) c = argv[argn][1]; + if (argv[argn][2]) { + opt_version = atoi(&argv[argn][2]); + } + switch (c) { case 'i': optarg = argv[argn][2] @@ -176,10 +181,10 @@ main(int argc, char *argv[]) * this as -^^. */ case '^': - disp_formats(); + disp_formats(opt_version); exit(0); case '%': - disp_filters(); + disp_filters(opt_version); exit(0); case 'h': case '?': diff --git a/gpsbabel/vecs.c b/gpsbabel/vecs.c index fb7c61c51..9540dcc70 100644 --- a/gpsbabel/vecs.c +++ b/gpsbabel/vecs.c @@ -335,19 +335,25 @@ disp_vecs(void) * determine what formats are supported. */ void -disp_formats(void) +disp_formats(int version) { vecs_t *vec; style_vecs_t *svec; - for (vec = vec_list; vec->vec; vec++) { - printf("%s\t%s\t%s\n", vec->name, - vec->extension? vec->extension : "", - vec->desc); - } - for (svec = style_list; svec->name; svec++) { - xcsv_read_internal_style(svec->style_buf); - printf("%s\t%s\t%s\n", svec->name, xcsv_file.extension ? - xcsv_file.extension : "", xcsv_file.description); + switch(version) { + case 0: + for (vec = vec_list; vec->vec; vec++) { + printf("%s\t%s\t%s\n", vec->name, + vec->extension? vec->extension : "", + vec->desc); + } + for (svec = style_list; svec->name; svec++) { + xcsv_read_internal_style(svec->style_buf); + printf("%s\t%s\t%s\n", svec->name, xcsv_file.extension ? + xcsv_file.extension : "", xcsv_file.description); + } + break; + default: + ; } } -- 2.30.2